#ifndef _CHARACTER_
#define	_CHARACTER_

#include "ServerEntity.hpp"
#include "Objects/CharacterEntity.hpp"
#include "Objects/DrawableEntity.hpp"
#include "Scripting/Scriptable.hpp"
#include "Graphics/Graphics.hpp"

class Character:public CharacterEntity, public ServerEntity, public DrawableEntity{
public:
    
	SpriteSet* characterSet;
	byte type;

    byte facingDir;
	
	Character();

	virtual void draw(sf::RenderTarget& target, sf::RenderStates states) const;
	virtual void move();
    virtual void setMove(byte dir);
    
    virtual void setCharacterSet(const char* name);
    
    virtual void bind(lua_State* luaState);
    virtual void push(lua_State* luaState);
	virtual void update();
};


#endif

